package com.mdd.admin.validate;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import javax.validation.constraints.*;

@Data
@ApiModel("申请人列创建参数")
public class ApplicantCreateValidate implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "客户编号")
    private Integer customerId;

    @ApiModelProperty(value = "客户名称")
    private String customerName;

    @ApiModelProperty(value = "客户变更历史记录")
    private Integer changeRecordId;

    @ApiModelProperty(value = "案件类型编号")
    private Integer caseTypeId;

    @ApiModelProperty(value = "案件类型")
    private String caseType;

    @ApiModelProperty(value = "申请人类型编号")
    private Integer applicantTypeId;

    @NotNull(message = "applicantType参数缺失")
    @ApiModelProperty(value = "申请人类型")
    private String applicantType;

    @ApiModelProperty(value = "实体类型编号")
    private Integer entityTypeId;

    @ApiModelProperty(value = "实体类型")
    private String entityType;

    @NotNull(message = "customerNameChinese参数缺失")
    @ApiModelProperty(value = "名称(中文)")
    private String customerNameChinese;

    @ApiModelProperty(value = "名称(其他)")
    private String customerNameElse;

    @ApiModelProperty(value = "是否第一联系人")
    private String isFirstContact;

    @ApiModelProperty(value = "是否作为收据抬头")
    private String isReceiptTitle;

    @ApiModelProperty(value = "缴费人收据抬头")
    private String payTheFeesTitle;

    @ApiModelProperty(value = "缴费人统一社会信用代码")
    private String socialCreditCode;

    @ApiModelProperty(value = "名称(英文)")
    private String customerNameEnglish;

    @ApiModelProperty(value = "申请人编号")
    private Integer applicantId;

    @ApiModelProperty(value = "申请人")
    private String applicant;

    @ApiModelProperty(value = "名称/姓(中文)")
    private String surnameChinese;

    @ApiModelProperty(value = "名(中文)")
    private String nameChinese;

    @ApiModelProperty(value = "名称/姓(英文)")
    private String surnameEnglish;

    @ApiModelProperty(value = "名(英文)")
    private String nameEnglish;

    @ApiModelProperty(value = "是否默认申请人")
    private String isDefaultApplicant;

    @NotNull(message = "habitualResidence参数缺失")
    @ApiModelProperty(value = "经常居所地或营业所所在地")
    private String habitualResidence;

    @NotNull(message = "province参数缺失")
    @ApiModelProperty(value = "省份id")
    private Integer province;

    @NotNull(message = "cityChinese参数缺失")
    @ApiModelProperty(value = "城市(中文)id")
    private Integer cityChinese;

    @ApiModelProperty(value = "行政区划")
    private String administrativeDivision;

    @NotNull(message = "postcode参数缺失")
    @ApiModelProperty(value = "邮编")
    private String postcode;

    @ApiModelProperty(value = "申请人名义缴纳官费")
    private String applicantOfficialFee;

    @ApiModelProperty(value = "城市(英文)")
    private String cityEnglish;

    @ApiModelProperty(value = "电子申请用户代码")
    private String electronicSubscriber;

    @NotNull(message = "streetChinese参数缺失")
    @ApiModelProperty(value = "街道地址(中文)")
    private String streetChinese;

    @ApiModelProperty(value = "历史地址")
    private Integer historicalAddressId;

    @ApiModelProperty(value = "街道地址(英文)")
    private String streetEnglish;

    @ApiModelProperty(value = "部门/楼层(中文)")
    private String departmentChinese;

    @ApiModelProperty(value = "部门/楼层(英文)")
    private String departmentEnglish;

    @ApiModelProperty(value = "证件类型编号")
    private Integer certificateTypeId;

    @NotNull(message = "certificateType参数缺失")
    @ApiModelProperty(value = "证件类型")
    private String certificateType;

    @NotNull(message = "idNumber参数缺失")
    @ApiModelProperty(value = "证件号")
    private String idNumber;

    @ApiModelProperty(value = "费减备案")
    private String feeReductionFiling;

    @ApiModelProperty(value = "费减备案有效开始日期")
    private String reductionCreateTime;

    @ApiModelProperty(value = "费减备案有效结束日期")
    private String reductionEndTime;

    @ApiModelProperty(value = "中国总委托书编号")
    private String powerOfAttorneyid;

    @ApiModelProperty(value = "备案证件号")
    private String recordCertificateNumber;

    @ApiModelProperty(value = "PCT总委托书编号")
    private String pctPowerOfAttorneyid;

    @ApiModelProperty(value = "联系人")
    private String contacts;

    @ApiModelProperty(value = "电话")
    private String phone;

    @ApiModelProperty(value = "传真")
    private String fax;

    @ApiModelProperty(value = "邮件")
    private String email;

    @NotNull(message = "nation参数缺失")
    @ApiModelProperty(value = "国家(地区)")
    private String nation;

    @ApiModelProperty(value = "是否监控年费")
    private String isAnnualMonitoringFee;

    @ApiModelProperty(value = "监控年费")
    private String annualMonitoringFee;

    @ApiModelProperty(value = "国籍(地区)")
    private String nationality;

    @ApiModelProperty(value = "营业执照")
    private String businessLicense;

    @ApiModelProperty(value = "费减证明文件名")
    private String reductionFilename;

    @ApiModelProperty(value = "费减证明文件路径")
    private String reductionPath;

    @ApiModelProperty(value = "总委托书文件名")
    private String powerOfAttorneyFilename;

    @ApiModelProperty(value = "总委托书文件路径")
    private String powerOfAttorneyPath;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "申请人要求id")
    private Integer applicantRequestId;

    @ApiModelProperty(value = "附件id")
    private Integer applicantFileId;

    @ApiModelProperty(value = "CPC姓名")
    private String cpcName;

    @ApiModelProperty(value = "CPC电话")
    private String cpcPhone;

    @ApiModelProperty(value = "CPC邮政编码")
    private String cpcPostcode;

    @ApiModelProperty(value = "CPC电子邮箱")
    private String cpcEmail;

    @ApiModelProperty(value = "CPC国家(地区)")
    private String cpcNation;

    @ApiModelProperty(value = "CPC省/自治区/直辖市")
    private String cpcProvince;

    @ApiModelProperty(value = "CPC市县")
    private String cpcTown;

    @ApiModelProperty(value = "CPC城区(乡)/街道/门牌号")
    private String cpcCity;

    @ApiModelProperty(value = "CEPCT类型")
    private String cepctType;

    @ApiModelProperty(value = "CEPCT名(中文)")
    private String cepctNameChinese;

    @ApiModelProperty(value = "CEPCT名称/姓(中文)")
    private String cepctSurnameChinese;

    @ApiModelProperty(value = "CEPCT名(英文)")
    private String cepctNameEnglish;

    @ApiModelProperty(value = "CEPCT名称/姓(英文)")
    private String cepctSurnameEnglish;

    @ApiModelProperty(value = "CEPCT国家(地址)")
    private String cepctNation;

    @ApiModelProperty(value = "CEPCT国家省份")
    private String cepctNationalProvince;

    @ApiModelProperty(value = "CEPCT城市(中文)")
    private String cepctCityChinese;

    @ApiModelProperty(value = "CEPCT城市(英文)")
    private String cepctCityEnglish;

    @ApiModelProperty(value = "CEPCT街道地址(中文)")
    private String cepctStreetChinese;

    @ApiModelProperty(value = "CEPCT街道地址(英文)")
    private String cepctStreetEnglish;

    @ApiModelProperty(value = "CEPCT电话")
    private String cepctPhone;

    @ApiModelProperty(value = "CEPCT邮编")
    private String cepctPostcode;

    @ApiModelProperty(value = "CEPCT传真")
    private String cepctFax;

    @ApiModelProperty(value = "CEPCT邮件")
    private String cepctEmail;

    @ApiModelProperty(value = "POA名称")
    private String poaName;

    @ApiModelProperty(value = "POA标题")
    private String poaTitle;

    @ApiModelProperty(value = "Hague姓名")
    private String hagueName;

    @ApiModelProperty(value = "Hague电话")
    private String haguePhone;

    @ApiModelProperty(value = "Hague邮政编码")
    private String haguePostcode;

    @ApiModelProperty(value = "Hague电子邮箱")
    private String hagueEmail;

    @ApiModelProperty(value = "Hague国家(地区)")
    private String hagueNation;

    @ApiModelProperty(value = "Hague省/自治区/直辖市")
    private String hagueProvince;

    @ApiModelProperty(value = "Hague市县")
    private String hagueTown;

    @ApiModelProperty(value = "Hague城区(乡)/街道/门牌号")
    private String hagueCity;

}
